"""
text_augment_config.py
----------------------
定义文本数据增强的配置选项。
包括常用的词级、句级和语义级增强方式。
"""

from dataclasses import dataclass

@dataclass
class TextAugmentConfig:
    use_augmentation: bool = False

    # 词级增强
    synonym_replacement: bool = False     # 同义词替换
    random_insertion: bool = False        # 随机插入词语
    random_swap: bool = False             # 随机交换词语
    random_deletion: bool = False         # 随机删除词语
    spelling_error: bool = False          # 随机拼写错误模拟

    # 句级增强
    back_translation: bool = False        # 回译增强（中→英→中）
    paraphrase: bool = False              # 句子改写（使用同义结构）
    random_sentence_order: bool = False   # 打乱句子顺序（适用于多句任务）

    # 语义级增强
    keyword_masking: bool = False         # 随机mask掉关键词
    noise_injection: bool = False         # 随机字符噪声注入
    entity_swap: bool = False             # 实体替换（如人名/地名）

    augment_prob: float = 0.3             # 每种增强方法应用概率
